home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / Projects / Contributed Scores / Piano Inventions / Invention 4 < prev    next >
Lisp/Scheme  |  1998-10-26  |  2KB  |  76 lines

  1. ; Invention IV - solo keyboard 
  2.  
  3. (create-tonality clusters '(c 3 c# 3 f 3 f# 3 g 3 b 3))
  4. (create-tonality spaces '(c 3 c# 3 d# 3 f# 3 b 3 f 4 c 4 g# 4 e 5))
  5.  
  6. (setq chord1 (activate-tonality (clusters c 5))
  7.       chord2 (activate-tonality (clusters c# 5))
  8.       chord3 (activate-tonality (clusters f# 3))
  9.       )
  10.  
  11. (setq tonal (activate-tonality (spaces c 3))
  12.       tonal1 (activate-tonality (spaces c 5 ))
  13.       )
  14.  
  15. (setq row '(a d c f =)) 
  16.  
  17. (defsym a '(ab cd df))
  18. (defsym b (append row '(bc def)))
  19. (defsym f '(b a f = cdf))
  20.  
  21. (setq rhy1 '(1/32)
  22.       rhy2 (vector-to-list (vector-round 12 384
  23.                                          (gen-sin 2 0.7 32 120)))
  24.       rhy3 (gen-loop '(1 4 3 2)'(24 36 48 60))
  25.       rhy4 '(-96 48 48 1/4-5 1/4-5 1/4-5 1/4-5 1/4-5)
  26.       )
  27.  
  28. (setq mel1 (gen-trans a 2)
  29.       mel2 (gen-notrans b 2)
  30.       mel3 (gen-notrans f 2)
  31.       mel4 (fill-template rhy2 (symbol-repeat 2 row))
  32.       )
  33.  
  34. (setq vel1 '(112 96 84 72)
  35.       vel2 (vector-to-list (vector-round 30 120
  36.                                          (gen-sin 2 0.7 32 120)))
  37.       vel3 (reverse (change-length times 3 rhy3))
  38.       vel4 '(0 20 40 60 65 70 75 80)
  39.       )
  40.  
  41. (def-symbol
  42.   line1 mel1
  43.   line2 mel2
  44.   line3 mel3
  45.   line4 mel4
  46.   line5 mel3
  47.   )
  48.  
  49. (def-length
  50.   line1 rhy4
  51.   line2 rhy2
  52.   line3 rhy3
  53.   line4 rhy1
  54.   line5 (append rhy4 rhy3 rhy2)
  55.   )
  56.  
  57. (def-velocity
  58.   line1 vel4
  59.   line2 vel2
  60.   line3 vel3
  61.   line4 vel1
  62.   line5 (append vel4 vel3 vel2)
  63.   )
  64.  
  65. (compile-song  "ccl;output:" 1/2 "invention4
  66.  
  67. ; BARS           |--|----|---|-|--|---|----|-|
  68.  
  69. line1 tonal1     "- - ---    --  ---        -"
  70. line2 chord1     " -     --          -----   "
  71. line3 chord2     "   -     --       -     -- "
  72. line4 chord3     "---           - --         "
  73. line5 tonal      "    ---   ---  -  - ----  -"
  74. )
  75.  
  76.